from pydantic import Field

from common.base_models import InfectionMonkeyBaseModel


class WMIOptions(InfectionMonkeyBaseModel):
    agent_binary_upload_timeout: float = Field(
        default=30.0,
        gt=0.0,
        le=100.0,
        description="The timeout (in seconds) for uploading the Agent binary"
        " to the target machine.",
    )
    smb_connect_timeout: float = Field(
        default=15.0,
        gt=0.0,
        le=100.0,
        description="The maximum time (in seconds) to wait for a response on an SMB connection.",
    )
